#pragma once
#include <setting.pb.h>
#include <common_header.h>

namespace primal
{
	enum SETTING_MASK : u64
	{
		NONE = 0xFFFFFFFFFFFFFFFF,

	};

	struct SettingBlock
	{
		SETTING_MASK mask;
	};

	class ConfigBinding
	{
	public:
		ConfigBinding();
		~ConfigBinding();
		virtual void on_setting(SettingBlock block) = 0;
	};

	Setting& setting();
	void setting_changed(SettingBlock block);
	bool save_setting();
}